<?php
/**
 * LICENSE
 *
 * This source file is subject to the new BSD license that is bundled with this
 * package in the file LICENSE.txt. It is also available through the
 * world-wide-web at this URL: http://dragonjsonserver.de/license. If you did
 * not receive a copy of the license and are unable to obtain it through the
 * world-wide-web, please send an email to license@dragonjsonserver.de. So we
 * can send you a copy immediately.
 *
 * @copyright Copyright (c) 2012 DragonProjects (http://dragonprojects.de)
 * @license http://framework.zend.com/license/new-bsd New BSD License
 * @author Christoph Herrmann <developer@dragonjsonserver.de>
 */
?>
<h3>Version 1.4.0</h3>
<h4>Releasedatum: 05.09.2012</h4>
<h4>Geänderte Pakete</h4>
<ul>
    <li>
        DragonX
        <ul>
            <li>
                Account
                <ul>
                    <li>Das Offset für die Accountlöschung wird nun Eintragen auf den aktuellen Zeitpunkt gerechnet sodass Änderungen am Offset sich nicht auf Accounts auswirken die bereits zum Löschen markiert sind, was vor allem bei einer Verkürzung der Zeit problematisch wäre</li>
                    <li>"Sofort loslegen" Möglichkeit, sodass ein temporärer Account erstellt und zurück gegeben wird. Dieser kann bei der Erstellung zum Löschen markiert werden sodass er nach einer eingestellbaren Zeit aus der Datenbank entfernt wird</li>
                    <li>Temporäre Accounts können per Eingabe einer Identity und eines Credential zu vollwertigen Accounts gespeichert werden. Eine eventuell vorhandene Löschmarkierung wird dabei entfernt</li>
                </ul>
            </li>
            <li>
                Acl
                <ul>
                    <li>'getResources()' der Acl Logikklasse erlaubt nun die Rückgabe aller Rechte eines beliebigen Accounts sodass bei Servoces der Account aus der Registry und bei der Homepage aus der Session verwendet werden kann</li>
                </ul>
            </li>
            <li>
                Homepage
                <ul>
                    <li>Der abstrakte Controller lädt den Record des eingeloggten Accounts nun schon im 'preDispatch()' zusammen mit den Ressourcen des Accounts und übergibt diese an die Views sodass die Ressourcen von Navigationseinträgen geprüft werden können bzw. stellt für abgeleitete Controller eine Methode zur Verfügung sodass Controlleraufrufe auf nicht vorhandene Ressourcen bereits abgefangen werden können</li>
                </ul>
            </li>
            <li>
                Storage
                <ul>
                    <li>Problem behoben wenn bei einem 'save()' keine Daten Aktualisiert wurden, da in diesem Fall immer die ID zurückgesetzt wurde auch wenn der Datensatz in der Datenbank existiert. Aus diesem Grund die Rückgabewerte der Methoden der Storage Schnittstelle geändert um diese Situationen besser abfragen zu können und das Verhalten der Zurücksetzung der ID beim Speichern von Datensätzen entfernt</li>
                </ul>
            </li>
        </ul>
    </li>
</ul>
<h4>Homepage</h4>
<ul>
    <li>Link im Header für Homepage/Administration um zwischen den beiden Bereichen zu wechseln wenn man eingeloggt ist. Dadurch ist der DragonJsonClient im Administrationsbereich unnötig und wurde entfernt</li>
    <li>Update der Twitter Bootstrap Bibliothek auf die aktuelle Version 2.1.0</li>
    <li>Umbenennung der öffentlichen Standardordner von 'image' zu 'img' und von 'javascript' zu 'js'</li>
    <li>Der Name und die E-Mail Adresse im Impressum sind nun per 'address' Tag gekennzeichnet</li>
    <li>Layout aller Formulare angepasst sodass diese ansprechender aussehen</li>
    <li>Layout der Startseite und des Impressums angepasst. Insbesondere auch das Layout der Pagination auf der Startseite für die Neuigkeiten</li>
    <li>Layout der FlashMessages geändert sodass diese nun farblich markiert sind je nachdem ob es Erfolgs-, Fehler- oder Warnmeldungen sind</li>
    <li>Paketabfrage durch die 'isAvailable()' der Package Registry durch die Homepage durchziehen, sodass Funktionalitäten wie Registrierung/Anmeldung deaktiviert werden wenn das Account Paket nicht aktiviert ist und die Homepage bei jeder Paketkonstellation funktionsfähig bleibt</li>
    <li>Ressourcenabfrage ist nun für die Homepage möglich. Zum Einen können Navigationseinträge an Ressourcen gebunden werden und zum Anderen können Controller im 'preDispatch()' oder in einzelnen Actions Ressourcen abfragen. Fehlt eine Ressource wird der Navigationseintrag nicht angezeigt bzw. bei Controlleraufrufen mit einer Meldung auf die Startseite weitergeleitet</li>
    <li>Die eigenen CSS Angaben sind nun ausgelagert in die CSS Datei 'layout.css' und nicht mehr im Layout Script direkt geschrieben</li>
    <li>Die Lizenz ist nun per Konfigurationsdatei 'dragonx/homepage/lizense.php' einstellbar und auch deaktivierbar falls das Projekt nicht unter einer Open Source Lizenz steht</li>
    <li>"Sofort loslegen" Möglichkeit auf der Homepage einbinden sodass man temporäre Accounts erstellen kann die an die Session gebunden sind und auch über den Administrationsbereich zu vollwertigen Accounts speichern kann</li>
    <li>Die Löschmarkierung wann ein Account gelöscht werden soll wird nun auch angezeigt wenn man auf den Homepagebereich wechselt</li>
</ul>
<h4>DragonJsonClient</h4>
<ul>
    <li>Layout des Formulars angepasst sodass diese ansprechender aussehen und zum restlichen Layout des Projektes passt</li>
</ul>
<h2>Migration vom Branch 1.3</h2>
<h3>Benötigt</h3>
<ul>
    <li>Verkettungen von Aufrufen der Storage Schnittstelle müssen aufgelöst werden, da sich die Rückgabewerte der Methoden 'save()', 'saveList()', 'loadList()', 'delete()', 'deleteList()' geändert haben</li>
</ul>
